// nodejs 链接mongodb

// 链接mongodb需要用到mongoose插件

// 先用cnpm i mongoose -S 下载mongoose插件

// 然后引入  mongoose  模块

const mongoose = require('mongoose') ;

// 定义数据库主机名，端口号，数据库名，以及连接的用户名和密码

const hostname = "localhost" ;
const port = 27017 ; 
const dbname = "managers" ; 
const user = "?" ; 
const pwd = "?" ;

// 创建数据库连接
const CONN_DB_URL = `mongodb://${hostname}:${port}/${dbname}` ; 
// 这里的插值表达式中的内容一定要和上面定义的常量一一对应


// 引用mongoose模块，连接数据库，如果有异常就打印数据库连接失败，否则连接成功
mongoose.connect(CONN_DB_URL,(err)=>{
    if( err ){
        console.log("数据库连接失败-fail");
    } else {
        console.log("数据库连接成功-success");
    }
});

// 定义一个常量，接收mongoose模块中的connection属性
const connection = mongoose.connection ;  

// 监听connection中打开数据库open方法，如果该方法执行过，就打印数据库打开成功！
connection.on("open",()=>{
    console.log("打开数据库成功!");
});

// 监听数据库断开连接的disconnected方法，如果该方法执行过就打印“数据库断开连接”
connection.on("disconnected",()=>{
    console.log("disconnected - 数据库断开连接");
});

// 监听数据库异常的error方法，如果异常发生了，将该异常传出来，就打印数据库异常，并打印数据库异常以及异常的原因
connection.on("error",(err)=>{
    console.log("数据库异常 ---" +err);
});